home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 18 / CU Amiga Magazine's Super CD-ROM 18 (1997)(EMAP Images)(GB)[!][issue 1998-01].iso / CUCD / Programming / AmigaE / Src / OOmodules / library / device / keyboard.e next >
Encoding:
Text File  |  1995-04-15  |  932 b   |  49 lines

  1. /*
  2.  
  3. A first version of the keyboard object. By now only one command is
  4. available: read(). Is reads from the keyboard. The pressed key(s) can
  5. be read out of ivent:inputevent.
  6.  
  7.   V2.0  12.4.95   made it fit to 'Object'
  8.                   should work
  9. */
  10.  
  11. OPT OSVERSION=37
  12. OPT MODULE
  13. OPT EXPORT
  14.  
  15. MODULE 'devices/keyboard','exec/io', 'devices/inputevent',
  16.         'oomodules/library/device'
  17.  
  18. OBJECT keyboard OF device
  19.   ievent:inputevent
  20. ENDOBJECT
  21.  
  22. PROC name() OF keyboard IS 'Keyboard'
  23.  
  24. PROC init() OF keyboard
  25.   self.name := 'keyboard.device'
  26. ENDPROC
  27.  
  28. PROC read() OF keyboard
  29.  
  30.   IF self.io = NIL THEN self.open('keyboard.device',0,0)
  31.  
  32.   self.io::iostd.data := self.ievent
  33.   self.io::iostd.length := SIZEOF inputevent
  34.   self.io::iostd.command := KBD_READEVENT
  35.  
  36.   DoIO(self.io)
  37.  
  38. ENDPROC
  39.  
  40. PROC end() OF keyboard
  41.   self.close()
  42. ENDPROC
  43.  
  44. PROC openIfClosed() OF keyboard
  45.  
  46.   IF self.io = NIL THEN self.new(["name",'keyboard.device'])
  47.  
  48. ENDPROC
  49.